<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
<html>

<head>
  <title>Proceso de Cifrado</title>
</head>
<body>

<h1>Proceso de Cifrado mediante AESphere</h1>
<p></p>
<p>El proceso de cifrado est&#225; claramente diferenciado en
tres sencillos pasos. <br>
<br>

<img style="border-width: 0px;" src="resources/botondef1.png" width="30" height="29" /> <u>Entrada y clave.</u> <br>
A la hora de elegir la entrada tenemos tres posibilidades: <b>Texto ASCII</b>, <b>Hexadecimal</b> y <b>Archivo</b><br><br>
<img style="border-width: 0px;" src="resources/Imagen1.png" width="255" height="168" />
<br><br>
- Si elegimos la opci&#243;n de Texto ASCII se habilita el
&#193;rea de texto para poder introducir un texto de hasta 1024 caracteres. El texto se rellenar&#225; para que el tama&#241;o del mismo coincida con el tama&#241;o de bloque que utiliza la aplicaci&#243;n para cifrar y descifra (este relleno no afectar&#225; en ning&#250;n momento ni al cifrar ni al descifrar). <br>
- En el caso de elegir la opci&#243;n hexadecimal se proceder&#225; de manera an&#225;loga a la anterior, rellenando la entrada &#250;nicamente con caracteres hexadecimales ya que la aplicaci&#243;n s&#243;lo permite la entrada de caracteres hexadecimales.<br>
- Para el caso de entrada a trav&#233;s de archivo, se habilitar&#225; el bot&#243;n &quot;Buscar&quot;, el cual te permite elegir un archivo de entrada. Puede ser cualquier tipo de archivo; tanto un archivo de texto (en cuyo caso se cifrar&#225; su contenido), como una imagen, un archivo de sonido, un archivo comprimido, etc. La &#250;nica limitaci&#243;n es el tama&#241;o del archivo, que es de 40 megabytes, ya que el prop&#243;sito de esta aplicaci&#243;n es fundamentalmente did&#225;ctico, y archivos mayores conllevan un proceso muy largo e incluso llegando a colapsar la pila de Java.<br><br>
<img style="border-width: 0px;" src="resources/Imagen2.png" width="255" height="168" />
<br><br>
En cuanto a la clave, tambi&#233;n nos encontramos ante tres posibilidades, <b>Texto ASCII</b>, <b>Hexadecimal</b> y <b>Archivo (base64)</b>.<br>
Hemos de elegir el tama&#241;o que tendr&#225; nuestra clave: 128, 192 &#243; 256 bits. Este tama&#241;o provocar&#225; que el proceso de cifrar tenga m&#225;s o menos rondas: 10, 12 &#243; 14 respectivamente. <br>
El n&#250;mero de caracteres a introducir depender&#225; directamente del tama&#241;o de bits elegido. La aplicaci&#243;n no permite introducir m&#225;s caracteres del que se expecifiquen. En el caso de que elijamos la opci&#243;n &quot;Archivo&quot;, se nos permitir&#225; buscar un archivo con una clave guardada. Desde el men&#250; archivo podemos guardar y cargar claves para que este procedimiento resulte m&#225;s c&#243;modo. La clave cargada de archivo en caso de ser menor de los bits marcados, se rellenar&#225; para coincidir con el tama&#241;o de bits elegido.</p>

<p><img style="border-width: 0px;" src="resources/botondef2.png" width="30" height="29" /> <u>Salida.</u><br>
Una vez elegida la entrada y la clave, tendremos que elegir el formato de nuestra salida.<br><br>
<img style="border-width: 0px;" src="resources/Imagen3.png" width="239" height="112" />

<br><br>
La salida puede ser igualmente <b>base64</b>, <b>Hexadecimal</b> y <b>Archivo</b>. De esta elecci&#243;n depender&#225; el formato de escritura de la salida del cifrado. De elegir salida archivo, se deber&#225; especificar la ruta donde se crear&#225; el archivo o bien elegir, mediante el bot&#243;n &quot;Buscar&quot;. Si elegimos un archivo existente, se reemplazar&#225; tras el t&#233;rmino del cifrado.</p>

<p><img style="border-width: 0px;" src="resources/botondef3.png" width="30" height="29" /><u>Opciones Avanzadas.</u> <br>
Por &#250;ltimo, deberemos elegir el m&#233;todo de cifrado y el modo de ejecuci&#243;n.<br><br>
<img style="border-width: 0px;" src="resources/Imagen4.png" width="356" height="132" />
<br><br>
Mediante el combo de &quot;M&#233;todo de cifrado&quot; podemos seleccionar si el cifrado se realizar&#225; mediante ECB o CBC, que son distintas formas de tratar los bloques de la entrada. De elegir el m&#233;todo CBC, se habilitar&#237;a un check para poder introducir el IV (Vector de Inicializaci&#243;n) manualmente, o bien, que se genere aleatoriamente.<br><br>
<img style="border-width: 0px;" src="resources/Imagen5.png" width="312" height="65" />

<br><br>
Eligiendo si el modo de ejecuci&#243;n es directo o paso a paso, provocaremos que la salida sea directamente la entrada cifrada o bien el resultado de los pasos intermedios del proceso junto con la entrada cifrada respectivamente. Huelga decir que de elegir el modo &quot;paso a paso&quot;, el procedimiento tardar&#225; m&#225;s. De elegir salida &quot;Archivo&quot;, el modo &quot;paso a paso&quot; s&#243;lo mostrar&#225; el primer y &#250;ltimo bloque en caso de que &#233;ste sea demasiado grande. </p>

<p>Desde el men&#250; &quot;Archivo&quot; podremos cargar y guardar claves como coment&#225;bamos, y desde el men&#250; &quot;Editar&quot; podremos copiar y pegar los campos que necesitemos.</p>

<p>Pulsando el bot&#243;n &quot;Siguiente&quot; lanzaremos el proceso. </p>

<p>La aplicaci&#243;n comprobar&#225; que se est&#225;n introduciendo datos correctos en cada campo de la pantalla, avisando al usuario en caso de que tenga que rellenar alguno de ellos o sea incorrecto. </p>

<p> Mediante el bot&#243;n &quot;Cancelar&quot; volveremos a la pantalla principal de la aplicaci&#243;n</p>

<p>Para una informaci&#243;n m&#225;s detallada y te&#243;rica de este proceso consulte los siguientes t&#233;rminos: <br>
<a href="principal_ES.html">Cifrado</a>,<a href="secundaria_ES.html">Descifrado</a>, <a href="AddRoundKey_ES.html"> AddRoundKey</a>, <a href="MixColumns_ES.html">MixColumns</a>, <a href="ShiftRows_ES.html">ShiftRows</a>, <a href="SubBytes_ES.html">SubBytes</a>, <a href="base64_ES.html">Base64</a>, <a href="ecb_ES.html">ECB</a>, <a href="cbc_ES.html">CBC</a>, <a href="Relleno_ES.html">Relleno</a>.



 </p>
</body>
</html>
